Mark Ustel

Row

Row

Row

About

---
title: "Interactive CV"
output: 
  flexdashboard::flex_dashboard:
    css: "style.css"
    social: ["github", "linkedin", "facebook", "twitter", "whatsapp", "menu"]
    source_code: embed
    orientation: rows
    vertical_layout: fill
    theme: 
      version: 4
      bootswatch: minty
---

```{r setup, include=FALSE, echo=FALSE}
knitr::opts_chunk$set(echo = TRUE)

library(DT)
library(tidyr)
library(flexdashboard)
library(leaflet)
library(readxl)
library(crosstalk)
library(ggplot2)
library(plotly)

```

```{r data, include=FALSE, echo=FALSE}

input <- read_excel("input.xlsx") |> mutate(To = replace_na(To, Sys.Date()))

df <- input |> 
  mutate(FromFormat = format(as.Date(input$From), '%b-%Y'),
         ToFormat = format(as.Date(input$To), '%b-%Y'),
         tag = paste('<font size="+2"> <b>', Position, '</b> at', Company, 
                     '</font> </br><p> <font size="-2"> <i>', FromFormat, ' to ',  ToFormat, '</i> </font> </p> <hr>
                     <li>', Desc1, '</li> <li>', Desc2, '</li> <li>', Desc3, '</li> <li>', Desc4, '</li> <li>', Desc5, '</li>'))

shared_df <- SharedData$new(df)
```


Mark Ustel
=====================================

Row {data-height=250}
-------------------------------------
###
```{r timeline, echo=FALSE}
plot_ly(data = shared_df,
        x = ~From, 
        y = ~rep(0,7), 
        color = ~Company,
        type   = 'scatter', 
        mode   = 'markers',
        opacity = 0.85,
        text = ~paste('<b>', Position, '</b> at', Company, '</br> <i> From ', FromFormat, ' to ',  ToFormat, '</i>'),
        marker = list(size = 30)) |>
  highlight(on = "plotly_hover", off = "plotly_doubleclick") |>
    layout(title = list(text = "Work History",
                      x = 0.05,
                      y = 0.9),
           xaxis = list(title = FALSE, 
                      showticklabels = TRUE, 
                      showgrid = TRUE),
           yaxis = list(title = FALSE, 
                      showticklabels = FALSE, 
                      showgrid = FALSE),
           showlegend = FALSE) |>
  config(displayModeBar = FALSE)

```


Row {data-height=500}
-------------------------------------
###
```{r workexperience, echo=FALSE}
datatable(shared_df, escape=FALSE,
          options = list(columnDefs = list(list(visible=FALSE, targets=c(seq(1:16)))),
                         pageLength = 1, lengthChange = FALSE, info = FALSE,
                         style = 'auto',
                         language = list(search = "<i class='glyphicon glyphicon-search'></i>"),
                         searchHighlight = TRUE,
                         headerCallback = JS(
              "function(thead, data, start, end, display){",
              "  $(thead).remove();",
              "}")
                         ) )
```

###
```{r, echo=FALSE}

```

### 
```{r map, echo=FALSE}
leaflet() |>
  addProviderTiles(
    providers$CartoDB.Positron,
    group = "CartoDB",
    options = providerTileOptions(opacity = 0.95)
  ) |>
  addProviderTiles(
    "Stamen.Terrain",
    group = "Terrain",
    options = providerTileOptions(opacity = 0.75)
  ) |>
  addProviderTiles(
    "Stamen.Toner",
    group = "Toner",
    options = providerTileOptions(opacity = 0.5)
  ) |>

  addProviderTiles(
    "Stamen.Watercolor",
    group = "Watercolor",
    options = providerTileOptions(opacity = 0.5)
  ) |>
  # add a layers control
  addLayersControl(
    baseGroups = c("CartoDB", "Terrain", "Toner", "Watercolor"),
    position = "topleft"
  ) |>
  addMarkers(lng=0.102310, lat=51.772938, label="Home") |>
  addCircleMarkers(data = shared_df, lng = ~lon, lat = ~lat, label = ~Company)
```





Row {data-height=250}
-------------------------------------
###
```{r, echo=FALSE}
# Library
library(fmsb)
 
# Create data: note in High school for several students
set.seed(99)
data <- as.data.frame(matrix( sample( 0:20 , 15 , replace=F) , ncol=5))
colnames(data) <- c("math" , "english" , "biology" , "music" , "R-coding" )
rownames(data) <- paste("mister" , letters[1:3] , sep="-")
 
# To use the fmsb package, I have to add 2 lines to the dataframe: the max and min of each variable to show on the plot!
data <- rbind(rep(20,5) , rep(0,5) , data)
 
# plot with default options:
radarchart(data)
```

About
=====================================